草庐IT

pointers - 指针问题

全部标签

go - 在 buffalo 中生成新项目失败,出现 GO111MODULE 问题

我是第一次尝试buffalo。我手动安装了先决条件而不是使用scoop,因为我不知道scoop会把东西放在哪里:https://www.stuartellis.name/articles/windows-golang-setup/#installing-buffalo使用Powershell中的这个安装了buffalo,它似乎工作正常:goget-u-vgithub.com/gobuffalo/buffalo/buffalo然而,当我使用这个例子生成一个新项目时:https://gobuffalo.io/en/docs/getting-started/new-project/buffa

go - panic : runtime error: invalid memory address or nil pointer dereference || r. 人体模型

我的Go编程新手遇到问题,例如:无效的内存地址或nil指针取消引用有时我可以解决问题,但这让我感到困惑。这是处理程序级别的代码,我试图实现###p.repo.UpdateProfile()和来自r.body解码的数据//UpdateProfilehandlerfunc(p*Profile)UpdateProfile(whttp.ResponseWriter,r*http.Request){var(errFormmodels.ErrorFormrespmodels.ResponserespErrormodels.ErrorResponseerrFieldmodels.ErrFieldda

pointers - go-ini 的 mapTo 函数的正确使用方法是什么?

背景我正在尝试使用go-fed的apcore构建联合应用程序的框架。我已经实现了apcore.Application接口(interface),但在加载配置时卡住了。当尝试将从config.ini加载的配置映射到时,服务器响应panic:reflect:callofreflect.Value.TypeonzeroValue>apcore配置结构。这发生了here:funcloadConfigFile(filenamestring,aApplication,debugbool)(c*config,errerror){InfoLogger.Infof("Loadingconfigfile:

google-app-engine - 具有运行时 go111 url 调度问题的 dev_appserver.py

我仍在努力让我的旧式应用引擎至少在go111下工作(由于依赖于内存缓存,go112将无法工作)。我现在正在为我的静态文件的app.yaml配置问题绊倒,我之前使用了一个完全静态的目录布局,只是在根目录中指定了一些动态处理程序,如下所示:runtime:go111handlers:-url:/_ah/.*script:autologin:adminsecure:always-url:/dynamicscript:autosecure:always-url:/admin/.*script:autologin:adminsecure:always-url:(.*)/static_files:

go - 使用 Go 的堆栈集合声明堆栈时遇到问题

我正在将一个最初用C++编写的工具转换为使用VSCode的Go,但Golinter不喜欢我的堆栈声明。我已经根据Go文档导入了堆栈集合,我认为我的Go工作区目录层次结构是正确的。-go(workspace)-bin-pkg-darwin_amd64-github.com-golang-collections-collections-stack.a-src-github.com-golang-collections-collections-stackstack.gostack_test.go-zwnewsom-verifiermain.gopackagemainimport("C""gi

google-app-engine - app.yaml api_version 将 Google AppEngine 从 Go 1.9 迁移到 Go 1.11 时出现问题

在$DAYJOB,我们使用基于Go1.9的AppEngine应用程序。现在Google正在弃用1.9版,我正尝试使用migrationguide升级到1.11。.它说我应该设置runtime:go111并从app.yaml中删除api_version:go1.9值,但是这样做时,我获取部署错误消息:ERROR:(gcloud.app.deploy)Stagingcommand[/usr/lib/google-cloud-sdk/platform/google_appengine/go-app-stager/home/peter/src/licensemanager/src/web/ap

go - 如何在 Go 中获取指向 Interface{} 的底层值的指针

我正在使用cgo与Go中的C代码交互,我需要使用指向Interface{}对象中的基础值的指针来调用C函数。该值将是任何原子原始类型(不包括complex64/complex128)或string。我希望我能够做这样的事情来获取ptr的地址作为unsafe.Pointer:unsafe.Pointer(reflect.ValueOf(ptr).UnsafeAddr())但是由于值无法寻址,这会导致panic。与此类似的问题是Takeaddressofvalueinsideaninterface,但这个问题是不同的,因为在这种情况下,已知该值将始终是上面指定的类型之一(最多64位),我只

pointers - X不实现Y(…方法具有指针接收器)

Closed.Thisquestionneedsdetailsorclarity。它当前不接受答案。想改善这个问题吗?添加详细信息,并通过editingthispost阐明问题。6个月前关闭。Improvethisquestion关于“X不能实现Y(...方法具有指针接收器)”的问题,已经有一些问答,但是对我来说,他们似乎在谈论不同的事情,而不适用于我的具体情况。因此,我没有使问题变得非常具体,而是使之变得笼统和抽象-似乎有几种不同的情况可以使此错误发生,请有人总结一下吗?即,如何避免该问题,如果发生,可能性是什么?谢谢。 最佳答案

go - Go中的ForkExec和Su问题

我写了一个在Go中使用ForkExec的程序。command:="/bin/su-c'/bin/ls-lh/>/tmp/sC0X3kASz7'joe"pid,err:=os.ForkExec(command,[]string{},os.Environ(),"",[]*os.File{nil,cmd.Stdout,cmd.Stderr})如果您在shell上执行该命令,并执行cat/tmp/sC0X3kASz7,您将看到列出的文件。然而,上面的ForkExec只创建了文件,并没有在其中写入任何内容。知道为什么会这样吗?go是根。edit:command:="/bin/ls-lh/>/tm

opengl - GO-OpenGL LoadMatrixd 和 GetDoublev 问题

gl.MatrixMode(gl.MODELVIEW)gl.PushMatrix()m:=new([16]float64)setIdentity(m)gl.LoadMatrixd((*gl.GLdouble)(&m[0]))gl.Rotated(90,0,1,0)gl.GetDoublev(gl.MODELVIEW_MATRIX,(*gl.GLdouble)(&m[0]))gl.PopMatrix()fmt.Printf("%f",m[0])//m[0]==forward.xm的内容在GetDoublev之后不会改变。我正在尝试移植一些C代码(有效,基本上就是这样)。我做错了什么?要求